SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
CREATE PROCEDURE [dbo].[SP_TMDOCU_PROV_Q24]      
/*-------------------------------------------------------*/        
/*---Empresa               OFISIS S.A.                --*/        
/*---Cliente               CELIMA                 --*/        
/*---Sistema               Tesoreria                  --*/        
/*---M¢dulo                Empresa                    --*/        
/*---Programa              HISTORIA DOCUMENTO         --*/        
/*---Script                SP_TMDOCU_PROV_Q05.sql     --*/        
/*---Nombre SP             SP_TMDOCU_PROV_Q05         --*/        
/*---Desarrollado por      Reynaldo Menacho Luyo      --*/        
/*---Fecha Creaci¢n        03/01/2001                 --*/        
/*---Base Datos            SQL SERVER        --*/        
/*---Versi¢n               2000                        --*/        
/*---Invoca a SP                                      --*/        
/*-------------------------------------------------------*/        
          
/*-------------------------------------------------------*/        
/*---Modificado 1 por           --*/        
/*---Fecha Modificaci¢n         --*/         
/*---Detalle Modificaci¢n       --*/        
/*-------------------------------------------------------*/        
        
/*-------------------------------------------------------*/        
/*---Drop Proc SP_TMDOCU_PROV_Q05                      --*/        
/*---Grant EXECUTE on SP_TMDOCU_PROV_Q05 to public         --*/         
/*---SP_TMDOCU_PROV_Q24 '01','00000000003','OCM', '000000000002', '2002/03/20','P'   --*/        
/*-------------------------------------------------------*/        
        
        
@ISCO_EMPR  TD_VC_002,        
@ISCO_PROV TD_VC_020,        
@ISTI_DOCU  TD_VC_003,        
@ISNU_DOCU  TD_VC_020,        
@IDFE_CANC TD_DT_001,        
@ISTI_AUXI_PROV TD_VC_001      
      
      
As      
CREATE TABLE #TWDOCU_PROV_Q05_1         
 ( CO_EMPR      varchar(3) NULL,        
   CO_TIPO_DOCU varchar(3)  NULL ,        
   NU_DOCU_PROV varchar(20)  NULL,        
   CO_PROV varchar(20) NULL ,        
   NU_ASTO VARCHAR(15) NULL,        
   FE_REPO datetime NULL,        
   CO_MONE varchar(03) NULL,        
   FA_TIPO_CAMB numeric(9,4) NULL,        
   CO_CAJA varchar(8) NULL,        
   NU_AMAR varchar(10) NULL,        
   NU_CANJ varchar(8) NULL,        
   NU_RENO varchar(8) NULL,        
   CO_BANC varchar(3) NULL,        
   NU_CNTA_BANC varchar(100) NULL,            
   NU_COMP_CABA varchar(20) NULL,         
   IM_CXPA numeric(16,4) NULL,        
   IM_PAGO numeric(16,4) NULL,        
   TI_DETA varchar(1) NULL)        
        
DECLARE         
        
@VSDE_LETR   TD_VC_100,        
@VSCO_EMPR TD_VC_002,        
@VSCO_PROV   TD_VC_020,        
@VSNU_CANJ   TD_VC_008,        
@VSNU_RENO   TD_VC_008,        
@VSTI_ORDE   TD_VC_050,        
--@VSDE_CODI  VARCHAR(500)        
        
@CSCO_TIPO_DOCU TD_VC_003,        
@CSCO_EMPR   TD_VC_002,        
@CSCO_PROV   TD_VC_020,        
@CSNU_CANJ   TD_VC_008,        
@CSNU_RENO   TD_VC_008,        
@CSNU_LETR_PROV TD_VC_008,        
        
@OSTI_DOCU_LETR TD_VC_003,        
@OSTI_DOCU_NCRE TD_VC_003,        
@OSTI_DOCU_OCMP TD_VC_003        
        
Exec SP_TTDOCU_CNTB_Q02 4, @OSTI_DOCU_NCRE OUTPUT        
Exec SP_TTDOCU_CNTB_Q02 6, @OSTI_DOCU_LETR OUTPUT        
        
-- TIPOS DE DETALLE(TI_DETA = '1' AL '7')        
--1.- DOCS EMITIDOS EN ESOS MESES             
--2.- PAGOS BANCOS / CAJA        
--3.- APLICACIONES DE NCR A DOCUMENTOS        
--4.- APLICACIONES DE OCM A DOCUMENTOS        
--5.- CANJES        
--6.- RENOVACIONES        
        
--1.- DOCS EMITIDOS EN ESOS MESES        
-- TMDOCU_PROV        
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, NU_ASTO, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB, IM_CXPA, TI_DETA)        
Select T1.CO_EMPR, T1.CO_TIPO_DOCU , T1.NU_DOCU_PROV ,  T1.CO_PROV, T1.NU_ASTO, T1.FE_EMIS,         
T1.CO_MONE, T1.FA_TIPO_CAMB,        
( PatIndex(T2.ST_SIGN,'S') - PatIndex(T2.ST_SIGN,'N') ) * T1.IM_TOTA,         
'1'        
From  TMDOCU_PROV T1, TTDOCU_CNTB T2        
Where T1.CO_EMPR = @ISCO_EMPR        
AND RTRIM(T1.CO_PROV) = RTRIM(@ISCO_PROV)        
AND      
 T1.CO_TIPO_DOCU = @ISTI_DOCU        
AND T1.NU_DOCU_PROV = @ISNU_DOCU        
And T1.FE_EMIS <= @IDFE_CANC        
And T1.CO_ESTA_DOCU != 'ANU'        
And T1.CO_TIPO_DOCU != 'OCM'         
And T1.CO_TIPO_DOCU != 'OSR'          
And T1.CO_TIPO_DOCU != 'ANT'        
AND T1.CO_TIPO_DOCU = T2.TI_DOCU        
        
If PatIndex('%LET%', @ISTI_DOCU) > 0         
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, NU_ASTO,  CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB, IM_CXPA, TI_DETA)        
Select T1.CO_EMPR, 'LET', T1.NU_LETR_PROV,  T1.CO_PROV,      
Case Len(Ltrim(RTrim(IsNull(NU_CANJ,''))))      
  When 0  Then 'Ren ' + NU_RENO      
  Else 'Can ' + NU_CANJ      
 End,      
T1.FE_EMIS,         
T1.CO_MONE, T1.FA_TIPO_CAMB, T1.IM_TOTA,        
'1'        
From   TMLETR_PROV T1        
Where T1.CO_EMPR = @ISCO_EMPR        
AND RTRIM(T1.CO_PROV) = RTRIM(@ISCO_PROV)        
AND T1.NU_LETR_PROV = @ISNU_DOCU        
And T1.FE_EMIS <= @IDFE_CANC        
And T1.CO_ESTA_DOCU != 'ANU'        
      
        
        
--2.- PAGOS BANCOS / CAJA        
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
CO_BANC, NU_CNTA_BANC, NU_COMP_CABA,        
IM_PAGO, TI_DETA)        
Select T1.CO_EMPR, T1.TI_DOCU_ENTI, T1.NU_DOCU_ENTI, T1.CO_ENTI, T2.FE_OPER,        
T4.CO_MONE, T2.FA_TIPO_CAMB,        
T1.CO_BANC, T1.NU_CNTA_BANC , T1.NU_COMP_BANC,        
( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') ) *        
(PatIndex(T1.ST_CIER_DOCU, 'N') * T1.IM_CONV_DOCU +        
PatIndex(T1.ST_CIER_DOCU, 'S') * T1.IM_SALD_DOCU ),        
'2'        
From  TDMOVI_BANC T1, TCMOVI_BANC T2, TMCNTA_BANC T3, TMDOCU_PROV T4, TTDOCU_CNTB T5        
Where  T4.CO_EMPR = @ISCO_EMPR        
AND  RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
--And    T1.TI_MOVI_BANC = 'E'         
And  T1.TI_ENTI = 'P'        
And  T2.FE_OPER  <= @IDFE_CANC        
And  T2.TI_SITU != 'ANU'         
And    T1.CO_EMPR = T2.CO_EMPR          
And    T1.CO_UNID_CONC = T2.CO_UNID_CONC      
And    T1.CO_BANC = T2.CO_BANC          
And    T1.NU_CNTA_BANC  = T2.NU_CNTA_BANC          
And    T1.AA_BNCO = T2.AA_BNCO        
And    T1.MM_BNCO = T2.MM_BNCO         
And    T1.TI_MOVI_BANC  = T2.TI_MOVI_BANC         
And    T1.NU_COMP_BANC = T2.NU_COMP_BANC          
And    T1.CO_EMPR = T3.CO_EMPR          
And    T1.CO_BANC = T3.CO_BANC          
And    T1.NU_CNTA_BANC  = T3.NU_CNTA_BANC          
AND  T1.CO_EMPR = T4.CO_EMPR        
AND  T1.CO_ENTI = T4.CO_PROV        
AND   T1.TI_DOCU_ENTI = T4.CO_TIPO_DOCU        
AND   T1.NU_DOCU_ENTI = T4.NU_DOCU_PROV           
AND   T4.CO_TIPO_DOCU = T5.TI_DOCU        
      
      
      
/*** Extorno de Banco ***/        
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
CO_BANC, NU_CNTA_BANC, NU_COMP_CABA,        
IM_PAGO, TI_DETA)        
Select T1.CO_EMPR, T1.TI_DOCU_ENTI, T1.NU_DOCU_ENTI, T1.CO_ENTI, T0.FE_ANUL,      
T4.CO_MONE, T2.FA_TIPO_CAMB,        
T1.CO_BANC, T1.NU_CNTA_BANC , T1.NU_COMP_BANC,        
( PatIndex(T5.ST_SIGN,'N') - PatIndex(T5.ST_SIGN,'S') ) *        
(PatIndex(T1.ST_CIER_DOCU, 'N') * T1.IM_CONV_DOCU +        
PatIndex(T1.ST_CIER_DOCU, 'S') * T1.IM_SALD_DOCU ),        
'2'        
From  TDMOVI_BANC T1, TCMOVI_BANC T2, TMCNTA_BANC T3, TMDOCU_PROV T4, TTDOCU_CNTB T5, TTBANC_ANUL T0      
Where  T4.CO_EMPR = @ISCO_EMPR        
AND  RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
--And    T1.TI_MOVI_BANC = 'E'         
And  T1.TI_ENTI = 'P'        
And  T0.FE_ANUL  <= @IDFE_CANC       
And  T2.TI_SITU = 'EXT'      
And  T1.CO_EMPR = T2.CO_EMPR          
And  T1.CO_UNID_CONC = T2.CO_UNID_CONC      
And  T1.CO_BANC = T2.CO_BANC          
And  T1.NU_CNTA_BANC  = T2.NU_CNTA_BANC          
And  T1.AA_BNCO = T2.AA_BNCO        
And  T1.MM_BNCO = T2.MM_BNCO         
And  T1.TI_MOVI_BANC  = T2.TI_MOVI_BANC         
And  T1.NU_COMP_BANC = T2.NU_COMP_BANC        
And  T1.CO_EMPR = T0.CO_EMPR                
And  T1.CO_BANC = T0.CO_BANC                
And  T1.NU_CNTA_BANC  = T0.NU_CNTA_BANC                
And  T1.AA_BNCO = T0.AA_BNCO              
And  T1.MM_BNCO = T0.MM_BNCO            
And  T1.TI_MOVI_BANC  = T0.TI_MOVI_BANC               
And  T1.NU_COMP_BANC = T0.NU_COMP_BANC              
And  T1.CO_EMPR = T3.CO_EMPR          
And  T1.CO_BANC = T3.CO_BANC          
And  T1.NU_CNTA_BANC  = T3.NU_CNTA_BANC        
AND  T1.CO_EMPR = T4.CO_EMPR        
AND  T1.CO_ENTI = T4.CO_PROV        
AND  T1.TI_DOCU_ENTI = T4.CO_TIPO_DOCU        
AND  T1.NU_DOCU_ENTI = T4.NU_DOCU_PROV        
AND  T4.CO_TIPO_DOCU = T5.TI_DOCU        
      
      
/*** Caja ***/        
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
CO_CAJA, NU_COMP_CABA,        
IM_PAGO, TI_DETA)        
Select T1.CO_EMPR, T1.TI_DOCU_ENTI, T1.NU_DOCU_ENTI, T1.CO_ENTI, T2.FE_OPER,        
T4.CO_MONE, T2.FA_TIPO_CAMB,        
T1.CO_CAJA, T1.NU_COMP_CAJA,         
( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') ) *        
( PatIndex(T1.ST_CIER_DOCU, 'N') * T1.IM_CONV_DOCU +        
PatIndex(T1.ST_CIER_DOCU, 'S') * T1.IM_SALD_DOCU),        
'2'        
From   TDMOVI_CAJA T1, TCMOVI_CAJA T2, TMCAJA T3, TMDOCU_PROV T4, TTDOCU_CNTB T5        
Where  T4.CO_EMPR = @ISCO_EMPR        
AND RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
--And    T1.TI_MOVI = 'E'        
And    T1.TI_ENTI = 'P'        
And    T2.FE_OPER  <= @IDFE_CANC        
And    T2.TI_SITU != 'ANU'         
--And    T2.TI_SITU != 'EXT'         
And    T1.CO_EMPR = T2.CO_EMPR          
And    T1.CO_CAJA = T2.CO_CAJA        
And    T1.AA_CAJA = T2.AA_CAJA        
And    T1.MM_CAJA = T2.MM_CAJA         
And    T1.TI_MOVI = T2.TI_MOVI        
And    T1.NU_COMP_CAJA = T2.NU_COMP_CAJA        
And    T1.CO_EMPR = T3.CO_EMPR          
And    T1.CO_CAJA = T3.CO_CAJA        
And    T1.CO_EMPR = T4.CO_EMPR        
AND    T1.CO_ENTI = T4.CO_PROV        
AND    T1.TI_DOCU_ENTI = T4.CO_TIPO_DOCU        
And    T1.NU_DOCU_ENTI = T4.NU_DOCU_PROV        
AND    T4.CO_TIPO_DOCU = T5.TI_DOCU        
      
      
/****Extorno Caja *****/        
      
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
CO_CAJA, NU_COMP_CABA,        
IM_PAGO, TI_DETA)        
Select T1.CO_EMPR, T1.TI_DOCU_ENTI, T1.NU_DOCU_ENTI, T1.CO_ENTI, T0.FE_ANUL,       
T4.CO_MONE, T2.FA_TIPO_CAMB,        
T1.CO_CAJA, T1.NU_COMP_CAJA,         
( PatIndex(T5.ST_SIGN,'N') - PatIndex(T5.ST_SIGN,'S') ) *        
( PatIndex(T1.ST_CIER_DOCU, 'N') * T1.IM_CONV_DOCU +        
PatIndex(T1.ST_CIER_DOCU, 'S') * T1.IM_SALD_DOCU),        
'2'        
From   TDMOVI_CAJA T1, TCMOVI_CAJA T2, TMCAJA T3, TMDOCU_PROV T4, TTDOCU_CNTB T5, TTCAJA_ANUL T0      
Where  T4.CO_EMPR = @ISCO_EMPR        
AND RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
--And    T1.TI_MOVI = 'E'        
And  T1.TI_ENTI = 'P'        
And  T0.FE_ANUL <= @IDFE_CANC        
And  T2.TI_SITU = 'EXT'      
And  T1.CO_EMPR = T2.CO_EMPR          
And  T1.CO_CAJA = T2.CO_CAJA        
And  T1.AA_CAJA = T2.AA_CAJA        
And  T1.MM_CAJA = T2.MM_CAJA         
And  T1.TI_MOVI = T2.TI_MOVI        
And  T1.NU_COMP_CAJA = T2.NU_COMP_CAJA        
And  T1.CO_EMPR = T0.CO_EMPR                
And  T1.CO_CAJA = T0.CO_CAJA          
And  T1.AA_CAJA = T0.AA_CAJA        
And  T1.MM_CAJA = T0.MM_CAJA      
AND  T1.TI_MOVI = T0.TI_MOVI      
AND  T1.NU_COMP_CAJA = T0.NU_COMP_CAJA                
And  T1.CO_EMPR = T3.CO_EMPR          
And  T1.CO_CAJA = T3.CO_CAJA        
And  T1.CO_EMPR = T4.CO_EMPR        
AND  T1.CO_ENTI = T4.CO_PROV        
AND  T1.TI_DOCU_ENTI = T4.CO_TIPO_DOCU        
And  T1.NU_DOCU_ENTI = T4.NU_DOCU_PROV        
AND  T4.CO_TIPO_DOCU = T5.TI_DOCU        
      
/*AND NOT EXISTS ( SELECT T6.CO_EMPR        
   FROM TCAMAR_OCPR T6, TDAMAR_OCPR T7        
   WHERE T6.TI_SITU = 'ACT'        
   AND T6.FE_AMAR <= @IDFE_CANC        
   AND T2.CO_EMPR = T6.CO_EMPR        
   And T2.CO_UNID_CONC = T6.CO_UNID_CONC        
   And T2.      
CO_ENTI = T6.CO_PROV          
   And T6.CO_EMPR = T7.CO_EMPR        
   And T6.NU_AMAR = T7.NU_AMAR )          
*/        
-- PAGOS LETRAS         
If PatIndex('%LET%', @ISTI_DOCU) > 0         
 BEGIN        
 INSERT INTO #TWDOCU_PROV_Q05_1         
 (CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
 CO_MONE, FA_TIPO_CAMB,        
 CO_BANC, NU_CNTA_BANC, NU_COMP_CABA,        
 IM_PAGO, TI_DETA)        
 Select T1.CO_EMPR, T1.TI_DOCU_ENTI, T1.NU_DOCU_ENTI, T1.CO_ENTI, T2.FE_OPER,        
 T4.CO_MONE, T2.FA_TIPO_CAMB,        
 T1.CO_BANC, T1.NU_CNTA_BANC, T1.NU_COMP_BANC,        
 PatIndex(T1.ST_CIER_DOCU, 'N') * T1.IM_CONV_DOCU +        
 PatIndex(T1.ST_CIER_DOCU, 'S') * T1.IM_SALD_DOCU,        
 '2'        
 From  TDMOVI_BANC T1, TCMOVI_BANC T2, TMCNTA_BANC T3, TMLETR_PROV T4        
 Where  T4.CO_EMPR = @ISCO_EMPR        
 AND RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
 AND    T4.NU_LETR_PROV = @ISNU_DOCU        
 --And    T1.TI_MOVI_BANC = 'E'        
 And    T1.TI_ENTI = 'P'        
 And    T2.FE_OPER  <= @IDFE_CANC        
 And    T2.TI_SITU = 'ACT'         
 And    T1.CO_EMPR = T2.CO_EMPR          
 And    T1.CO_UNID_CONC = T2.CO_UNID_CONC      
 And    T1.CO_BANC = T2.CO_BANC          
 And    T1.NU_CNTA_BANC  = T2.NU_CNTA_BANC          
 And    T1.AA_BNCO = T2.AA_BNCO        
 And    T1.MM_BNCO = T2.MM_BNCO         
 And    T1.TI_MOVI_BANC  = T2.TI_MOVI_BANC         
 And    T1.NU_COMP_BANC = T2.NU_COMP_BANC        
        
 And    T1.CO_EMPR = T3.CO_EMPR          
 And    T1.CO_BANC = T3.CO_BANC          
 And    T1.NU_CNTA_BANC  = T3.NU_CNTA_BANC        
        
 AND  T1.CO_EMPR = T4.CO_EMPR        
 AND  T1.CO_ENTI = T4.CO_PROV        
 AND  T1.TI_DOCU_ENTI = 'LET'        
 AND   T1.NU_DOCU_ENTI = T4.NU_LETR_PROV        
        
        
 INSERT INTO #TWDOCU_PROV_Q05_1         
 (CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
 CO_MONE, FA_TIPO_CAMB,        
 CO_CAJA, NU_COMP_CABA,         
 IM_PAGO, TI_DETA)        
 Select T1.CO_EMPR, T1.TI_DOCU_ENTI, T1.NU_DOCU_ENTI, T1.CO_ENTI, T2.FE_OPER,        
 T4.CO_MONE, T2.FA_TIPO_CAMB,        
 T1.CO_CAJA, T1.NU_COMP_CAJA,        
        
 PatIndex(T1.ST_CIER_DOCU, 'N') * T1.IM_CONV_DOCU +        
 PatIndex(T1.ST_CIER_DOCU, 'S') * T1.IM_SALD_DOCU,        
 '2'        
 From   TDMOVI_CAJA T1, TCMOVI_CAJA T2, TMCAJA T3, TMLETR_PROV T4        
 Where  T4.CO_EMPR = @ISCO_EMPR        
 AND RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
 AND  T4.NU_LETR_PROV = @ISNU_DOCU        
 -- And    T1.TI_MOVI = 'E'        
 And    T1.TI_ENTI = 'P'        
 And    T2.FE_OPER  <= @IDFE_CANC        
 And    T2.TI_SITU = 'ACT'         
        
 And    T1.CO_EMPR = T2.CO_EMPR          
 And    T1.CO_CAJA = T2.CO_CAJA        
 And    T1.AA_CAJA = T2.AA_CAJA        
 And    T1.MM_CAJA = T2.MM_CAJA         
 And    T1.TI_MOVI = T2.TI_MOVI        
 And    T1.NU_COMP_CAJA = T2.NU_COMP_CAJA        
        
 And    T1.CO_EMPR = T3.CO_EMPR          
 And    T1.CO_CAJA = T3.CO_CAJA        
        
 And  T1.CO_EMPR = T4.CO_EMPR        
 AND  T1.TI_DOCU_ENTI = 'LET'        
 And  T1.NU_DOCU_ENTI = T4.NU_LETR_PROV        
        
 END        
        
        
--3.- APLICACIONES NCR A DOCUMENTOS        
        
-- DOCUMENTOS        
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
NU_AMAR, IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_PROV, T1.CO_PROV, T1.FE_AMAR,        
T4.CO_MONE, T1.FA_TIPO_CAMB,        
T1.NU_AMAR,         
(PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') ) *        
(PATINDEX(T2.ST_CIER_DOCU, 'N')* ISNULL(T2.IM_PAGO_CDES,0) +         
PATINDEX(T2.ST_CIER_DOCU, 'S')* ISNULL(T2.IM_SALD_CDES,0)),        
'3'        
From   TCAMAR_NCPR T1 , TDAMAR_NCPR T2, TMDOCU_PROV T4, TTDOCU_CNTB T5        
Where T4.CO_EMPR = @ISCO_EMPR        
AND RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
AND  T4.CO_TIPO_DOCU != @OSTI_DOCU_NCRE        
And  T1.FE_AMAR  <= @IDFE_CANC        
AND  T1.TI_SITU != 'ANU'        
AND  T1.CO_EMPR = T2.CO_EMPR        
AND  T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND  T1.NU_AMAR = T2.NU_AMAR        
AND  T1.FE_AMAR = T2.FE_AMAR        
AND  T2.CO_ENTI = T4.CO_PROV        
AND  T2.CO_EMPR = T4.CO_EMPR        
AND  T2.CO_TIDO_DEST = T4.CO_TIPO_DOCU        
AND  T2.NU_DOCU_DEST = T4.NU_DOCU_PROV        
AND (NU_REND_GAST IS NULL OR NU_REND_GAST = '')        
AND  T4.CO_ESTA_DOCU != 'ANU'         
AND  T4.CO_TIPO_DOCU = T5.TI_DOCU        
     --3.- EXTORNO APLICACIONES NCR A DOCUMENTOS      
        
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
NU_AMAR, IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_PROV, T1.CO_PROV, T0.FE_ANUL,      
T4.CO_MONE, T1.FA_TIPO_CAMB,        
T1.NU_AMAR,         
(PatIndex(T5.ST_SIGN,'N') ) - PatIndex(T5.ST_SIGN,'S') *        
(PATINDEX(T2.ST_CIER_DOCU, 'N')* ISNULL(T2.IM_PAGO_CDES,0) +         
PATINDEX(T2.ST_CIER_DOCU, 'S')* ISNULL(T2.IM_SALD_CDES,0)),        
'3'        
From   TCAMAR_NCPR T1 , TDAMAR_NCPR T2, TMDOCU_PROV T4, TTDOCU_CNTB T5, TTAMAR_NCPA T0      
Where T4.CO_EMPR = @ISCO_EMPR        
AND RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
AND  T4.CO_TIPO_DOCU != @OSTI_DOCU_NCRE        
And  T0.FE_ANUL  <= @IDFE_CANC        
AND  T1.TI_SITU = 'EXT'        
AND  T1.CO_EMPR = T2.CO_EMPR        
AND  T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND  T1.NU_AMAR = T2.NU_AMAR        
AND  T1.FE_AMAR = T2.FE_AMAR        
AND  T1.CO_EMPR = T0.CO_EMPR        
AND  T1.CO_UNID_CONC = T0.CO_UNID_CONC        
AND  T1.NU_AMAR = T0.NU_AMAR        
AND  T1.FE_AMAR = T0.FE_AMAR        
AND  T2.CO_ENTI = T4.CO_PROV        
AND  T2.CO_EMPR = T4.CO_EMPR        
AND  T2.CO_TIDO_DEST = T4.CO_TIPO_DOCU        
AND  T2.NU_DOCU_DEST = T4.NU_DOCU_PROV        
AND (NU_REND_GAST IS NULL OR NU_REND_GAST = '')        
AND  T4.CO_ESTA_DOCU != 'ANU'         
AND  T4.CO_TIPO_DOCU = T5.TI_DOCU             
If PatIndex('%'+@OSTI_DOCU_LETR+'%', @ISTI_DOCU) > 0         
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB, IM_PAGO,  TI_DETA)        
SELECT T1.CO_EMPR, @OSTI_DOCU_LETR, T4.NU_LETR_PROV, T1.CO_PROV, T1.FE_AMAR,       
T4.CO_MONE, T1.FA_TIPO_CAMB,         
(PATINDEX(T2.ST_CIER_DOCU, 'N')* ISNULL(T2.IM_PAGO_CDES,0) +         
PATINDEX(T2.ST_CIER_DOCU, 'S')* ISNULL(T2.IM_SALD_CDES,0)),        
'3'        
From   TCAMAR_NCPR T1 , TDAMAR_NCPR T2, TMLETR_PROV T4        
Where T4.CO_EMPR = @ISCO_EMPR        
AND T4.CO_PROV = @ISCO_PROV        
AND T4.NU_LETR_PROV = @ISNU_DOCU        
And T1.FE_AMAR  <= @IDFE_CANC        
AND T1.TI_SITU = 'ACT'         
AND T1.CO_EMPR = T2.CO_EMPR          
AND T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND T1.NU_AMAR = T2.NU_AMAR        
AND T1.FE_AMAR = T2.FE_AMAR        
AND T2.CO_EMPR = T4.CO_EMPR        
AND T2.CO_ENTI = T4.CO_PROV        
AND T2.CO_TIDO_DEST = @OSTI_DOCU_LETR        
AND T2.NU_DOCU_DEST = T4.NU_LETR_PROV        
AND T4.CO_ESTA_DOCU != 'ANU'         
        
        
-- NOTAS DE CREDITO APLICADAS         
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
NU_AMAR, IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_PROV, T1.CO_PROV, T1.FE_AMAR,        
T4.CO_MONE, T1.FA_TIPO_CAMB,        
T1.NU_AMAR,        
(PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') ) *        
(PATINDEX(T2.ST_CIER_DOCU, 'N')* ISNULL(T2.IM_PAGO_CORI,0) +         
PATINDEX(T2.ST_CIER_DOCU, 'S')* ISNULL(T2.IM_SALD_CORI,0)),        
'3'        
From   TCAMAR_NCPR T1 , TDAMAR_NCPR T2, TMDOCU_PROV T4, TTDOCU_CNTB T5, TTDOCU_CNTB T6        
Where  T4.CO_EMPR = @ISCO_EMPR        
AND  RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
AND  T1.CO_EMPR = T4.CO_EMPR        
AND  T4.CO_TIPO_DOCU = T6.TI_DOCU        
And  T6.ST_DOCU_0004 = 'S'        
And  T1.FE_AMAR  <= @IDFE_CANC        
AND  T1.TI_SITU = 'ACT'        
AND  T2.CO_TIDO_ORIG = T4.CO_TIPO_DOCU         
AND  T2.NU_DOCU_ORIG = T4.NU_DOCU_PROV         
AND  T1.CO_EMPR = T2.CO_EMPR        
AND  T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND  T1.NU_AMAR = T2.NU_AMAR        
AND  T1.FE_AMAR = T2.FE_AMAR        
AND  T2.CO_EMPR = T4.CO_EMPR        
AND  T1.CO_PROV = T4.CO_PROV        
AND  T2.CO_TIDO_ORIG = T4.CO_TIPO_DOCU        
AND  T2.NU_DOCU_ORIG = T4.NU_DOCU_PROV        
AND  T4.CO_ESTA_DOCU != 'ANU'         
AND  T4.CO_TIPO_DOCU = T5.TI_DOCU         
        
--4.- APLICACION ANTICIPO A DOCUMENTOS - OCM Y OSR       
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
NU_AMAR, IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_PROV, T2.CO_ENTI, T1.FE_AMAR,        
T4.CO_MONE, T1.FA_TIPO_CAMB, T1.NU_AMAR,       
(PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') ) *        
(PATINDEX(T2.ST_CIER_DOCU, 'N')* ISNULL(T2.IM_PAGO_DEST,0) +         
PATINDEX(T2.ST_CIER_DOCU, 'S')* ISNULL(T2.IM_SALD_DEST,0)),         
'4'        
From   TCAMAR_OCPR T1 , TDAMAR_OCPR T2, TMDOCU_PROV T4, TTDOCU_CNTB T5        
Where T4.CO_EMPR = @ISCO_EMPR        
AND RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND   T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND   T4.NU_DOCU_PROV = @ISNU_DOCU        
AND   T4.CO_TIPO_DOCU != 'OCM'         
AND   T4.CO_TIPO_DOCU != 'OSR'        
And   T4.CO_TIPO_DOCU != 'ANT'        
And   T1.FE_AMAR  <= @IDFE_CANC        
AND   T1.TI_SITU != 'ANU'        
AND   T1.CO_EMPR = T2.CO_EMPR        
AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND   T1.NU_AMAR = T2.NU_AMAR        
AND   T1.FE_AMAR = T2.FE_AMAR        
AND   T2.CO_ENTI = T4.CO_PROV        
AND   T2.CO_EMPR = T4.CO_EMPR        
AND   T2.CO_TIDO_DEST = T4.CO_TIPO_DOCU        
AND   T2.NU_DOCU_DEST = T4.NU_DOCU_PROV        
AND  (NU_REND_GAST IS NULL OR NU_REND_GAST = '')        
AND   T4.CO_ESTA_DOCU != 'ANU'         
AND   T4.CO_TIPO_DOCU = T5.TI_DOCU        
        
--4.- EXTORNO APLICACION ANTICIPO A DOCUMENTOS - OCM Y OSR       
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
NU_AMAR, IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_PROV, T2.CO_ENTI, T0.FE_ANUL,        
T4.CO_MONE, T1.FA_TIPO_CAMB, T1.NU_AMAR,       
(PatIndex(T5.ST_SIGN,'N') - PatIndex(T5.ST_SIGN,'S') ) *        
(PATINDEX(T2.ST_CIER_DOCU, 'N')* ISNULL(T2.IM_PAGO_DEST,0) +         
PATINDEX(T2.ST_CIER_DOCU, 'S')* ISNULL(T2.IM_SALD_DEST,0)),         
'4'        
From   TCAMAR_OCPR T1 , TDAMAR_OCPR T2, TMDOCU_PROV T4, TTDOCU_CNTB T5, TTAMAR_OPAN t0      
Where T4.CO_EMPR = @ISCO_EMPR        
AND   RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND   T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND   T4.NU_DOCU_PROV = @ISNU_DOCU        
AND   T4.CO_TIPO_DOCU != 'OCM'         
AND   T4.CO_TIPO_DOCU != 'OSR'        
And   T4.CO_TIPO_DOCU != 'ANT'        
And   T0.FE_ANUL  <= @IDFE_CANC        
AND   T1.TI_SITU = 'EXT'        
AND   T1.CO_EMPR = T2.CO_EMPR        
AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND   T1.NU_AMAR = T2.NU_AMAR        
AND   T1.FE_AMAR = T2.FE_AMAR       
AND   T1.CO_EMPR = T0.CO_EMPR        
AND   T1.CO_UNID_CONC = T0.CO_UNID_CONC        
AND   T1.NU_AMAR = T0.NU_AMAR        
AND   T1.FE_AMAR = T0.FE_AMAR      
AND   T2.CO_ENTI = T4.CO_PROV        
AND   T2.CO_EMPR = T4.CO_EMPR        
AND   T2.CO_TIDO_DEST = T4.CO_TIPO_DOCU        
AND   T2.NU_DOCU_DEST = T4.NU_DOCU_PROV        
AND   (NU_REND_GAST IS NULL OR NU_REND_GAST = '')        
AND   T4.CO_ESTA_DOCU != 'ANU'         
AND   T4.CO_TIPO_DOCU = T5.TI_DOCU        
      
      
If PatIndex('%'+@OSTI_DOCU_LETR+'%', @ISTI_DOCU) > 0         
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB, IM_PAGO,  TI_DETA)        
SELECT T1.CO_EMPR, @OSTI_DOCU_LETR, T4.NU_LETR_PROV, T2.CO_ENTI, T1.FE_AMAR,        
T4.CO_MONE, T1.FA_TIPO_CAMB,      
(PATINDEX(T2.ST_CIER_DOCU, 'N')* ISNULL(T2.IM_PAGO_DEST,0) +         
PATINDEX(T2.ST_CIER_DOCU, 'S')* ISNULL(T2.IM_SALD_DEST,0)),        
'4'        
From   TCAMAR_OCPR T1 , TDAMAR_OCPR T2, TMLETR_PROV T4        
Where T4.CO_EMPR = @ISCO_EMPR        
AND T4.CO_PROV = @ISCO_PROV        
AND  T4.NU_LETR_PROV = @ISNU_DOCU        
And     T1.FE_AMAR  <= @IDFE_CANC        
AND     T1.TI_SITU = 'ACT'        
AND     T1.CO_EMPR = T2.CO_EMPR        
AND     T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND     T1.NU_AMAR = T2.NU_AMAR        
AND  T1.FE_AMAR = T2.FE_AMAR        
AND     T2.CO_ENTI = T4.CO_PROV        
AND     T2.CO_EMPR = T4.CO_EMPR        
AND     T2.CO_TIDO_DEST = @OSTI_DOCU_LETR        
AND     T2.NU_DOCU_DEST = T4.NU_LETR_PROV        
AND T4.CO_ESTA_DOCU != 'ANU'         
        
        
-- ORDENES DE COMPRAS APLICADAS         
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
NU_AMAR, IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_PROV, T1.CO_PROV, T1.FE_AMAR,        
T4.CO_MONE, T1.FA_TIPO_CAMB, T1.NU_AMAR, -      
(PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') ) *        
(PATINDEX(T2.ST_CIER_DOCU, 'N')* ISNULL(T2.IM_PAGO_ORIG,0) +         
PATINDEX(T2.ST_CIER_DOCU, 'S')* ISNULL(T2.IM_SALD_ORIG,0)),         
'4'        
From   TCAMAR_OCPR T1 , TDAMAR_OCPR T2, TMDOCU_PROV T4, TTDOCU_CNTB T5        
Where  T4.CO_EMPR = @ISCO_EMPR        
AND    RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND    T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND    T4.NU_DOCU_PROV = @ISNU_DOCU        
AND    T1.CO_EMPR = T4.CO_EMPR        
AND   (T4.CO_TIPO_DOCU = 'ANT'        
OR     T4.CO_TIPO_DOCU = 'OCM')        
And    T1.FE_AMAR  <= @IDFE_CANC        
AND    T1.TI_SITU = 'ACT'        
AND    T2.CO_TIDO_ORIG = T4.CO_TIPO_DOCU         
AND    T2.NU_DOCU_ORIG = T4.NU_DOCU_PROV         
AND    T1.CO_EMPR = T2.CO_EMPR        
AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND    T1.NU_AMAR = T2.NU_AMAR        
AND    T1.FE_AMAR = T2.FE_AMAR        
AND    T2.CO_EMPR = T4.CO_EMPR       
AND    T1.CO_PROV = T4.CO_PROV        
AND    T2.CO_TIDO_ORIG = T4.CO_TIPO_DOCU        
AND    T2.NU_DOCU_ORIG = T4.NU_DOCU_PROV        
AND    T4.CO_ESTA_DOCU != 'ANU'         
AND    T4.CO_TIPO_DOCU = T5.TI_DOCU         
        
        
--5.- CANJES        
        
-- SOLO MUESTRO LOS DOCUMENTOS QUE SE CANJEAN, NO LAS LETRAS GENERADAS        
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
NU_CANJ, IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_PROV, T1.CO_PROV, T1.FE_CANJ,         
T4.CO_MONE, T1.FA_TIPO_CAMB,        
T1.NU_CANJ,         
( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') ) *         
( PatIndex(T2.ST_CIER_DOCU, 'N') *  T2.IM_CANJ_MDOC +         
  PatIndex(T2.ST_CIER_DOCU, 'S') *  T2.IM_SALD_DOCU ),        
'5'        
From   TCCANJ_PROV T1 , TDCANJ_PROV T2, TMDOCU_PROV T4, TTDOCU_CNTB T5        
Where  T4.CO_EMPR = @ISCO_EMPR        
AND    RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND    T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND    T4.NU_DOCU_PROV = @ISNU_DOCU        
And    T1.CO_EMPR =   T4.CO_EMPR        
And    T1.FE_CANJ  <= @IDFE_CANC        
AND    T1.TI_SITU != 'ANU'      
AND    T1.CO_EMPR = T2.CO_EMPR        
AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND    T1.CO_PROV = T2.CO_PROV        
AND    T1.NU_CANJ = T2.NU_CANJ        
AND    T1.FE_CANJ = T2.FE_CANJ        
AND    T2.CO_PROV = T4.CO_PROV        
AND    T2.CO_TIPO_DOCU = T4.CO_TIPO_DOCU         
AND    T4.CO_TIPO_DOCU != 'CDR'        
AND    T2.NU_DOCU_PROV = T4.NU_DOCU_PROV         
AND   (NU_REND_GAST IS NULL OR NU_REND_GAST = '')        
AND    T4.CO_ESTA_DOCU != 'ANU'         
AND    T4.CO_TIPO_DOCU = T5.TI_DOCU          
      
      
--5.- CANJES        
        
-- EXTORNO SOLO MUESTRO LOS DOCUMENTOS QUE SE CANJEAN, NO LAS LETRAS GENERADAS        
      
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
NU_CANJ, IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_PROV, T1.CO_PROV, T0.FE_ANUL,      
T4.CO_MONE, T1.FA_TIPO_CAMB,        
T1.NU_CANJ,         
( PatIndex(T5.ST_SIGN,'N') - PatIndex(T5.ST_SIGN,'S') ) *         
( PatIndex(T2.ST_CIER_DOCU, 'N') *  T2.IM_CANJ_MDOC +         
  PatIndex(T2.ST_CIER_DOCU, 'S') *  T2.IM_SALD_DOCU ),        
'5'        
From  TCCANJ_PROV T1 , TDCANJ_PROV T2, TMDOCU_PROV T4, TTDOCU_CNTB T5, TTCANP_ANUL t0      
Where  T4.CO_EMPR = @ISCO_EMPR        
AND    RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND    T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND    T4.NU_DOCU_PROV = @ISNU_DOCU        
And    T1.CO_EMPR =   T4.CO_EMPR        
And    T0.FE_ANUL  <= @IDFE_CANC        
AND    T1.TI_SITU = 'EXT'        
AND    T1.CO_EMPR = T2.CO_EMPR        
AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND    T1.CO_PROV = T2.CO_PROV        
AND    T1.NU_CANJ = T2.NU_CANJ        
AND    T1.FE_CANJ = T2.FE_CANJ        
AND    T1.CO_EMPR = T0.CO_EMPR        
AND    T1.CO_UNID_CONC = T0.CO_UNID_CONC        
AND    T1.NU_CANJ = T0.NU_CANJ      
AND    T1.FE_CANJ = T0.FE_CANJ      
AND    T2.CO_PROV = T4.CO_PROV        
AND    T2.CO_TIPO_DOCU = T4.CO_TIPO_DOCU         
AND    T4.CO_TIPO_DOCU != 'CDR'        
AND    T2.NU_DOCU_PROV = T4.NU_DOCU_PROV         
AND   (NU_REND_GAST IS NULL OR NU_REND_GAST = '')        
AND    T4.CO_ESTA_DOCU != 'ANU'         
AND    T4.CO_TIPO_DOCU = T5.TI_DOCU          
      
        
If PatIndex('%'+@OSTI_DOCU_LETR+'%', @ISTI_DOCU) > 0         
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB, IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, @OSTI_DOCU_LETR, T4.NU_LETR_PROV, T1.CO_PROV, T1.FE_CANJ,         
T4.CO_MONE, T1.FA_TIPO_CAMB,         
( PatIndex(T2.ST_CIER_DOCU, 'N') *  T2.IM_CANJ_MDOC +         
  PatIndex(T2.ST_CIER_DOCU, 'S') *  T2.IM_SALD_DOCU ),        
'5'        
From  TCCANJ_PROV T1 , TDCANJ_PROV T2, TMLETR_PROV T4        
Where  T4.CO_EMPR = @ISCO_EMPR        
AND T4.CO_PROV = @ISCO_PROV        
AND  T4.NU_LETR_PROV = @ISNU_DOCU        
And T1.CO_EMPR =   T4.CO_EMPR        
And    T1.FE_CANJ  <= @IDFE_CANC        
AND    T1.TI_SITU != 'ANU'        
AND    T1.TI_SITU != 'EXT'       
AND    T1.CO_EMPR = T2.CO_EMPR        
AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND    T1.CO_PROV = T2.CO_PROV        
AND    T1.NU_CANJ = T2.NU_CANJ        
AND    T1.FE_CANJ = T2.FE_CANJ        
AND    T2.CO_PROV = T4.CO_PROV        
AND    T2.CO_TIPO_DOCU = @OSTI_DOCU_LETR        
AND         
 T2.NU_DOCU_PROV = T4.NU_LETR_PROV         
AND T4.CO_ESTA_DOCU != 'ANU'         
        
        
--6.- RENOVACIONES        
        
-- SOLO MUESTRO LOS DOCUMENTOS QUE SE RENUEVAN, NO LAS LETRAS GENERADAS        
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
NU_RENO, IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_PROV, T1.CO_PROV, T1.FE_RENO,        
T4.CO_MONE, T1.FA_TIPO_CAMB,        
T1.NU_RENO, ( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') ) * T2.IM_RENO_MDOC,        
'6'        
From   TCRENO_PROV T1 , TDRENO_PROV T2, TMDOCU_PROV T4, TTDOCU_CNTB T5        
Where  T4.CO_EMPR = @ISCO_EMPR        
AND RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
AND  T1.CO_EMPR =   T4.CO_EMPR        
And    T1.FE_RENO  <= @IDFE_CANC        
AND    T1.TI_SITU != 'ANU'        
AND    T1.TI_SITU != 'EXT'      
AND    T1.CO_EMPR = T2.CO_EMPR        
AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND    T1.CO_PROV = T2.CO_PROV        
AND    T1.NU_RENO = T2.NU_RENO        
AND    T1.FE_RENO = T2.FE_RENO        
AND    T2.CO_PROV = T4.CO_PROV        
AND    T2.CO_TIPO_DOCU = T4.CO_TIPO_DOCU         
AND    T2.NU_DOCU_PROV = T4.NU_DOCU_PROV         
AND  T4.CO_ESTA_DOCU != 'ANU'         
And    T4.NU_REND_GAST IS NULL        
AND  T4.CO_TIPO_DOCU = T5.TI_DOCU        
        
If PatIndex('%'+@OSTI_DOCU_LETR+'%', @ISTI_DOCU) > 0         
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
NU_RENO,        
IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, @OSTI_DOCU_LETR, T4.NU_LETR_PROV, T1.CO_PROV, T1.FE_RENO,        
T4.CO_MONE, T1.FA_TIPO_CAMB,        
T1.NU_RENO, T2.IM_RENO_MDOC,        
'6'        
From   TCRENO_PROV T1 , TDRENO_PROV T2, TMLETR_PROV T4        
Where  T4.CO_EMPR = @ISCO_EMPR        
AND RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.NU_LETR_PROV = @ISNU_DOCU        
AND  T1.CO_EMPR =   T4.CO_EMPR        
And    T1.FE_RENO  <= @IDFE_CANC        
AND    T1.TI_SITU != 'ANU'        
AND    T1.TI_SITU != 'EXT'      
AND    T1.CO_EMPR = T2.CO_EMPR        
AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC        
AND    T1.CO_PROV = T2.CO_PROV        
AND    T1.NU_RENO = T2.NU_RENO        
AND    T1.FE_RENO = T2.FE_RENO        
AND    T2.CO_PROV = T4.CO_PROV        
AND  T2.CO_TIPO_DOCU = 'LET'        
AND    T2.NU_DOCU_PROV = T4.NU_LETR_PROV       
AND  T4.CO_ESTA_DOCU != 'ANU'        
        
--7.- DEVOLUCION DE ANTICIPOS        
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
CO_BANC, NU_CNTA_BANC, NU_COMP_CABA,        
IM_PAGO, TI_DETA)        
Select T1.CO_EMPR, T1.CO_TIPO_DOCU, T1.NU_DOCU_PROV, T4.CO_PROV, T2.FE_OPER,        
T4.CO_MONE, T2.FA_TIPO_CAMB,        
T1.CO_BANC, T1.NU_CNTA_BANC, T1.NU_COMP_BANC, -T1.IM_DEVO,        
'7'        
From  TDDEVO_ANTC T1, TCMOVI_BANC T2, TMCNTA_BANC T3, TMDOCU_PROV T4, TTDOCU_CNTB T5        
Where  T4.CO_EMPR = @ISCO_EMPR        
AND RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
And  T2.FE_OPER  <= @IDFE_CANC        
And  T2.TI_SITU = 'ACT'         
And    T1.CO_EMPR = T2.CO_EMPR          
And    T1.CO_BANC = T2.CO_BANC          
And    T1.NU_CNTA_BANC  = T2.NU_CNTA_BANC          
And    T1.AA_BNCO = T2.AA_BNCO        
And    T1.MM_BNCO = T2.MM_BNCO         
And    T1.TI_MOVI_BANC  = T2.TI_MOVI_BANC         
And    T1.NU_COMP_BANC = T2.NU_COMP_BANC              
And    T1.CO_EMPR = T3.CO_EMPR          
And    T1.CO_BANC = T3.CO_BANC          
And    T1.NU_CNTA_BANC  = T3.NU_CNTA_BANC              
AND    T1.CO_EMPR = T4.CO_EMPR        
AND    T2.CO_ENTI = T4.CO_PROV        
AND   T1.CO_TIPO_DOCU = T4.CO_TIPO_DOCU        
AND   T1.NU_DOCU_PROV = T4.NU_DOCU_PROV        
AND   T4.CO_TIPO_DOCU = T5.TI_DOCU    
  
--7.5.- DEVOLUCION ANTICIPOS DE CAJA  
  
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB,        
CO_CAJA, NU_COMP_CABA,        
IM_PAGO, TI_DETA)        
Select T1.CO_EMPR, T1.CO_TIPO_DOCU, T1.NU_DOCU_PROV, T4.CO_PROV, T2.FE_OPER,        
T4.CO_MONE, T2.FA_TIPO_CAMB,        
T1.CO_CAJA, T1.NU_COMP_CAJA, -T1.IM_DEVO,        
'7'        
From  TDDEVA_CAJP T1, TCMOVI_CAJA T2, TMCAJA T3, TMDOCU_PROV T4, TTDOCU_CNTB T5        
Where  T4.CO_EMPR = @ISCO_EMPR        
AND RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
And  T2.FE_OPER  <= @IDFE_CANC        
And  T2.TI_SITU = 'ACT'         
And    T1.CO_EMPR = T2.CO_EMPR          
And    T1.CO_CAJA = T2.CO_CAJA          
And    T1.AA_CAJA = T2.AA_CAJA        
And    T1.MM_CAJA = T2.MM_CAJA         
And   T1.TI_MOVI  = T2.TI_MOVI         
And    T1.NU_COMP_CAJA = T2.NU_COMP_CAJA        
And    T1.CO_EMPR = T3.CO_EMPR          
And    T1.CO_CAJA = T3.CO_CAJA          
AND    T1.CO_EMPR = T4.CO_EMPR        
AND    T2.CO_ENTI = T4.CO_PROV        
AND   T1.CO_TIPO_DOCU = T4.CO_TIPO_DOCU        
AND   T1.NU_DOCU_PROV = T4.NU_DOCU_PROV        
AND   T4.CO_TIPO_DOCU = T5.TI_DOCU    
      
        
--8.- RENDICION DE GASTOS        
        
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB, NU_AMAR,CO_BANC,        
IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_PROV, T2.CO_ENTI, T1.FE_REND_GAST,        
T2.CO_MONE, T2.FA_CAMB_DOCU, /*'RENDIC',*/T1.NU_REND_GAST,T1.CO_BANC_DEST,         
T2.IM_DOCU, '8'        
From   TCREND_GAST T1 , TDREND_GAST T2, TMDOCU_PROV T4, TTDOCU_CNTB T5        
Where T4.CO_EMPR = @ISCO_EMPR        
AND      
 RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
And    T1.FE_REND_GAST  <= @IDFE_CANC        
AND    T1.TI_SITU = 'ACT' 
AND    ISNULL(T1.CO_BANC_DEST,'') != ''     
AND    T1.CO_EMPR = T2.CO_EMPR        
AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC       
AND    T1.NU_REND_GAST = T2.NU_REND_GAST        
AND    T1.FE_REND_GAST = T2.FE_REND_GAST        
AND    T2.CO_EMPR = T4.CO_EMPR        
AND    T2.CO_ENTI = T4.CO_PROV        
AND    T2.CO_TIPO_DOCU = T4.CO_TIPO_DOCU        
AND    T2.NU_DOCU_PROV = T4.NU_DOCU_PROV        
--AND (NU_REND_GAST IS NULL OR NU_REND_GAST = '')        
And Rtrim( IsNull (T4.NU_REND_GAST, '')) !=  ''      
AND  T4.CO_ESTA_DOCU != 'ANU'         
AND  T4.CO_TIPO_DOCU = T5.TI_DOCU        
        
                
INSERT INTO #TWDOCU_PROV_Q05_1         
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_PROV, CO_PROV, FE_REPO,         
CO_MONE, FA_TIPO_CAMB, NU_AMAR,CO_CAJA,        
IM_PAGO, TI_DETA)        
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_PROV, T2.CO_ENTI, T1.FE_REND_GAST,        
T2.CO_MONE, T2.FA_CAMB_DOCU, /*'RENDIC',*/T1.NU_REND_GAST,T1.CO_CAJA_DEST,         
T2.IM_DOCU, '8'        
From   TCREND_GAST T1 , TDREND_GAST T2, TMDOCU_PROV T4, TTDOCU_CNTB T5        
Where T4.CO_EMPR = @ISCO_EMPR        
AND      
 RTRIM(T4.CO_PROV) = RTRIM(@ISCO_PROV)        
AND  T4.CO_TIPO_DOCU = @ISTI_DOCU        
AND  T4.NU_DOCU_PROV = @ISNU_DOCU        
And    T1.FE_REND_GAST  <= @IDFE_CANC        
AND    T1.TI_SITU = 'ACT'         
AND    T1.CO_EMPR = T2.CO_EMPR        
AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC       
AND    T1.NU_REND_GAST = T2.NU_REND_GAST        
AND    T1.FE_REND_GAST = T2.FE_REND_GAST   
AND    ISNULL(T1.CO_CAJA_DEST,'') != ''          
AND    T2.CO_EMPR = T4.CO_EMPR        
AND    T2.CO_ENTI = T4.CO_PROV        
AND    T2.CO_TIPO_DOCU = T4.CO_TIPO_DOCU        
AND    T2.NU_DOCU_PROV = T4.NU_DOCU_PROV        
--AND (NU_REND_GAST IS NULL OR NU_REND_GAST = '')        
And Rtrim( IsNull (T4.NU_REND_GAST, '')) !=  ''      
AND  T4.CO_ESTA_DOCU != 'ANU'         
AND  T4.CO_TIPO_DOCU = T5.TI_DOCU   

--SELECT * FROM #TWDOCU_PROV_Q05_1        
--DETALLADO        
 -- DATOS DE LETRAS DE CANJES Y RENOVACIONES        
 SELECT @VSCO_EMPR = ''        
 SELECT @VSCO_PROV = ''        
 SELECT @VSNU_CANJ = ''        
 SELECT @VSDE_LETR = ''        
        
 DECLARE CU_TWDOCU_PROV_Q05_1 CURSOR FOR        
 Select DISTINCT T1.CO_EMPR, T1.CO_PROV, T1.NU_CANJ, T2.NU_LETR_PROV        
 From  #TWDOCU_PROV_Q05_1 T1, TDCANJ_PROV T2        
 WHERE T1.CO_EMPR = T2.CO_EMPR        
 AND T1.CO_PROV = T2.CO_PROV        
 AND T1.NU_CANJ = T2.NU_CANJ        
 AND T1.FE_REPO = T2.FE_CANJ        
 AND T2.NU_LETR_PROV IS NOT NULL        
 --AND T1.FE_REPO >= @IDFE_CANC        
 ORDER BY 1, 2, 3          
        
 Open CU_TWDOCU_PROV_Q05_1        
 Fetch  CU_TWDOCU_PROV_Q05_1 INTO  @CSCO_EMPR, @CSCO_PROV, @CSNU_CANJ, @CSNU_LETR_PROV        
 WHILE @@FETCH_STATUS = 0        
 Begin        
        
  IF @CSCO_EMPR + @CSCO_PROV+ @CSNU_CANJ = @VSCO_EMPR + @VSCO_PROV + @VSNU_CANJ         
   SELECT @VSDE_LETR = RTRIM(@VSDE_LETR) + ', ' + RTRIM(@CSNU_LETR_PROV)        
          
  IF @CSCO_EMPR+@CSCO_PROV+@CSNU_CANJ != @VSCO_EMPR+@VSCO_PROV+@VSNU_CANJ          
  BEGIN        
   IF ISNULL(LEN(@VSDE_LETR),0) > 0         
    UPDATE #TWDOCU_PROV_Q05_1        
    SET NU_CNTA_BANC = @VSDE_LETR        
    WHERE CO_EMPR = @VSCO_EMPR        
    AND CO_PROV = @VSCO_PROV        
    AND NU_CANJ = @VSNU_CANJ         
    --AND FE_REPO >= @IDFE_CANC        
           
   SELECT @VSDE_LETR = @CSNU_LETR_PROV        
   SELECT @VSCO_EMPR = @CSCO_EMPR        
         SELECT @VSCO_PROV = @CSCO_PROV        
         SELECT @VSNU_CANJ = @CSNU_CANJ        
  END         
  Fetch  CU_TWDOCU_PROV_Q05_1 INTO  @CSCO_EMPR, @CSCO_PROV, @CSNU_CANJ, @CSNU_LETR_PROV        
 End        
 Close CU_TWDOCU_PROV_Q05_1        
 DEALLOCATE CU_TWDOCU_PROV_Q05_1        
        
 UPDATE #TWDOCU_PROV_Q05_1        
 SET NU_CNTA_BANC = @VSDE_LETR        
 WHERE CO_EMPR = @VSCO_EMPR        
 AND CO_PROV = @VSCO_PROV        
 AND NU_CANJ = @VSNU_CANJ        
 --AND FE_REPO >= @IDFE_CANC        
         
 SELECT @VSCO_EMPR = ''        
 SELECT @VSCO_PROV = ''        
 SELECT @VSNU_RENO = ''        
 SELECT @VSDE_LETR = ''        
        
        
 DECLARE CU_TWDOCU_PROV_Q05_2 CURSOR FOR        
 Select DISTINCT T1.CO_EMPR, T1.CO_PROV, T1.NU_RENO, T2.NU_LETR_PROV        
 From  #TWDOCU_PROV_Q05_1 T1, TDRENO_PROV T2        
 WHERE T1.CO_EMPR = T2.CO_EMPR        
 AND T1.CO_PROV = T2.CO_PROV        
 AND T1.NU_RENO = T2.NU_RENO        
 AND T1.FE_REPO = T2.FE_RENO        
 AND T2.NU_LETR_PROV IS NOT NULL        
 --AND T1.FE_REPO >= @IDFE_CANC        
 ORDER BY 1, 2, 3        
        
 Open CU_TWDOCU_PROV_Q05_2        
 Fetch  CU_TWDOCU_PROV_Q05_2 INTO  @CSCO_EMPR, @CSCO_PROV, @CSNU_RENO, @CSNU_LETR_PROV        
 WHILE @@FETCH_STATUS = 0        
 Begin        
        
  IF @CSCO_EMPR+@CSCO_PROV+@CSNU_RENO = @VSCO_EMPR+@VSCO_PROV+@VSNU_RENO         
   SELECT @VSDE_LETR = RTRIM(@VSDE_LETR)+', '+RTRIM(@CSNU_LETR_PROV)        
          
        
  IF @CSCO_EMPR+@CSCO_PROV+@CSNU_RENO != @VSCO_EMPR+@VSCO_PROV+@VSNU_RENO         
  BEGIN        
   IF ISNULL(LEN(@VSDE_LETR),0) > 0         
    UPDATE #TWDOCU_PROV_Q05_1        
    SET NU_CNTA_BANC = @VSDE_LETR        
    WHERE CO_EMPR = @VSCO_EMPR        
    AND CO_PROV = @VSCO_PROV        
    AND NU_RENO = @VSNU_RENO        
    --AND FE_REPO >= @IDFE_CANC        
           
   SELECT @VSDE_LETR = @CSNU_LETR_PROV        
   SELECT @VSCO_EMPR = @CSCO_EMPR        
         SELECT @VSCO_PROV = @CSCO_PROV        
         SELECT @VSNU_RENO = @CSNU_RENO        
  END         
  Fetch  CU_TWDOCU_PROV_Q05_2 INTO  @CSCO_EMPR, @CSCO_PROV, @CSNU_RENO, @CSNU_LETR_PROV        
 End        
 Close CU_TWDOCU_PROV_Q05_2        
 DEALLOCATE CU_TWDOCU_PROV_Q05_2        
        
 UPDATE #TWDOCU_PROV_Q05_1       
 SET NU_CNTA_BANC = @VSDE_LETR        
 WHERE CO_EMPR = @VSCO_EMPR        
 AND CO_PROV = @VSCO_PROV        
 AND NU_RENO = @VSNU_RENO        
 --AND FE_REPO >= @IDFE_CANC        
        
-------------------------        
        
 SELECT T1.CO_EMPR, T1.CO_TIPO_DOCU, T1.NU_DOCU_PROV, T1.CO_PROV, T1.NU_ASTO, T1.CO_MONE,         
  T2.SB_MONE, T2.DE_MONE, T1.FE_REPO, ISNULL(T1.CO_BANC, ''),       
  ISNULL(T1.NU_CNTA_BANC, ''), ISNULL(T1.CO_CAJA, ''), ISNULL( T1.NU_COMP_CABA, ' '), ISNULL( T1.NU_AMAR, ' '),         
  ISNULL(T1.NU_CANJ, ''), ISNULL(T1.NU_RENO, ''), ISNULL( T1.IM_CXPA, 0 ), ISNULL( T1.IM_PAGO, 0),          
  ISNULL(T1.FA_TIPO_CAMB, 0),  T1.TI_DETA        
 FROM #TWDOCU_PROV_Q05_1 T1, TTMONE T2        
 WHERE T1.CO_MONE = T2.CO_MONE        
 ORDER BY T1.FE_REPO, T1.CO_TIPO_DOCU, T1.NU_DOCU_PROV        
        
RETURN        
/*------------------------- FIN ------------------------------ */    
GO
